<?php
    include("inc/inc_init_admin.php");
    include("../clases/DAO/UsuarioDAO.Class.php");

//Mensajes De Error
    $err_usuario_vacio = "Completar el campo \"usuario\"";
    $err_clave_vacio = "Completar el campo \"contraseña\"";
    $err_usuario_no_disponible = "El nombre de usuario elegido no está disponible";

    $error = false;

    $us_dao = new UsuarioDAO();

    $action = $_GET['action'];
    $id = $_GET['id'];
    $usuario = $_POST;

    switch($action){
        case "add":
            if(empty($usuario['usuario']))
                $error[] = $err_usuario_vacio;
            if(empty($usuario['clave']))
                $error[] = $err_clave_vacia;
            if(!$error){
                if($us_dao->persistir($usuario))
                    header("Location: lista_usuarios.php");
                $error = $err_usuario_no_disponible;
            }
            $next_action = "add";
            break;
        case "update":
            if(empty($usuario['usuario']))
                $error[] = $err_usuario_vacio;
            if(!is_numeric($usuario['id']))
                    header("Location: lista_usuarios.php");
            if(!$error){
                if($us_dao->modificar($usuario))
                    header("Location: lista_usuarios.php");
                $error = $err_usuario_no_disponible;
            }
            $action = "edit"; 
            $next_action = "update"; 
        case "edit":
            if(!is_numeric($id))
                header("Location: lista_usuarios.php");
                
            $usuario = $us_dao->traerPorId($id);
            if(!$usuario)
                header("Location: lista_usuarios.php");
            $next_action = "update";
            break;
        default:
            $next_action = "add";
        

    }

    if($next_action == "add")
        $titulo = "Agregar Usuario";
    else
        $titulo = "Modificar Usuario";

    //Roles
    $roles = array(
                    "encuestador" => array("value" => "encuestador", "text" => "Encuestador"),
                    "administrador" => array("value" => "administrador", "text" => "Administrador"),
                    "controlador" => array("value" => "controlador", "text" => "Controlador")
                );

    if($next_action == "update"){
        $roles[$usuario['rol']]["selected"] = "selected = \"selected\"";

    }

    

?>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />

<html>
	<head>
		<title> Gnu Poller </title>
                <link href="css/general.css" rel="stylesheet" type="text/css" />
                <style type="text/css">
                    table#formulario{
                        margin: 0 auto 0 auto;
                        width:300px;
                    }

                    table#formulario td{
                        text-align:left;
                    }

                    td.error{
                        color:red;
                        font-size:0.8em;
                    }
                </style>
        </head>
        <body>
<?php
    include("inc/inc_menu.php");
?>
            <p> <h3> <?php echo $titulo; ?> </h3> </p>
            <form method="POST" action="<?php echo $_SERVER['PHP_SELF'] . "?action=" . $next_action; ?>">
                <?php if($next_action == "update"): ?>
                    <input type="hidden" name="id" value="<?php echo $usuario['id']; ?>">
                <?php endif; ?>
                <table id="formulario">
                    <tbody>
                        <tr>
                            <td> Nombre y Apellido: </td>
                            <td>
                                <input type="text" name="nombre" value="<?php echo $usuario['nombre']; ?>">
                            </td>
                        </tr>
                        <tr>
                            <td> Usuario: </td>
                            <td>
                                <input type="text" name="usuario" value="<?php echo $usuario['usuario']; ?>">
                            </td>
                        </tr>
                        <tr>
                            <td> Contraseña: </td>
                            <td>
                                <input type="password" name="clave">
                            </td>
                        </tr>
                        <tr>
                            <td> Rol </td>
                            <td>
                                <select name="rol">
                                    <?php foreach($roles as $r): ?>
                                        <option value="<?php echo $r['value'] . '" ' . $r['selected']; ?>" >
                                            <?php echo $r['text']; ?>
                                        </option>
                                    <?php endforeach; ?>
                                </select>
                            </td>
                        </tr>
                        <tr>
                            <td style="text-align:right" colspan="2">
                                <input type="submit" value="Aceptar">
                            </td>
                        <?php
                            if($next_action == "update"):
                        ?>
                            <tr>
                                <td colspan="2">
                                    Dejar campo "contraseña" en blanco si no se desea modificar la contraseña
                                </td>
                            </tr>
                        <?php
                            endif;
                            if($error):
                                foreach($error as $e):
                        ?>
                                    <tr>
                                        <td class="error"> <?php echo $e; ?> </td>
                                    </tr>
                        <?php
                                endforeach;
                            endif;
                        ?>
                    </tbody>
                </table>
            </form>

       
        </body>
</html>